package com.hanamaki.demo01;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.testng.annotations.AfterClass;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;

import java.net.MalformedURLException;
import java.net.URL;

/**
 * 1.测试 Selenium中 xpath 表达式的语法
 * 2.测试 浏览器中 Navigation 导航对象的使用
 */
public class SeleniumNavigateDemo {

    //注册驱动
    /**
     * driver代表浏览器对象
     */
    WebDriver driver;
    /* 浏览器导航对象 */
    WebDriver.Navigation navigate;
    @BeforeMethod
    public void setUp() {
        //注册本地火狐打开的位置
        System.setProperty("webdriver.gecko.driver", "C:\\Program Files\\Mozilla Firefox\\geckodriver.exe");
        //初始化
        driver = new FirefoxDriver();
        /* 在 浏览器 （driver） 对象中  实例化的到浏览器导航对象  Navigation */
        navigate = driver.navigate();
    }


    @Test
    public void test() throws InterruptedException, MalformedURLException {
        driver.get("https://www.baidu.com");
        /* 使用 selenium中的 xpath方式 来定位 元素 */
        WebElement test_Kuang = driver.findElement(By.xpath("//input[@id='kw']"));
        test_Kuang.sendKeys("德尔塔");

        /* 定位百度一下 */
        WebElement bdyx = driver.findElement(By.xpath("//input[@class='bg s_btn']"));
        bdyx.click();

        /* 等待时间  uft：wait(timeout()); */
        /* 强制等待 */
        Thread.sleep(3000);
        /* 隐士等待 */
        /* 显示等待 */

        /* 测试 浏览器 导航 对象  */
        /*返回 */ navigate.back();
        Thread.sleep(3000);
        /* 前进 */ navigate.forward();

        Thread.sleep(3000);

        /* 打开网页资源的位置 */   /*navigate.to()  和 driver.get(); 是一个作用  */

//        navigate.to("https://baike.baidu.com/item/%E5%BE%B7%E5%B0%94%E5%A1%94/57277356?fr=aladdin");
        URL url = new URL("https://baike.baidu.com/item/%E5%BE%B7%E5%B0%94%E5%A1%94/57277356?fr=aladdin");
        navigate.to(url);

        /* 刷新网页 */
        navigate.refresh();



    }

    @AfterClass
    public void close() {
//        driver.quit();
    }
}
